package ws

/*
	message暂定分为三类：
	1.来电信号（包含来电号码和归属地）
	2.情绪分析结果（情绪对应的枚举值和置信分）
	3.关键词组和关键词组对应的结果（都是数组，且下标对应）
	4.来电挂断（隐藏弹屏，触发工单）
*/

const MSG_TYPE_0 = "incoming"
const MSG_TYPE_1 = "emotion"
const MSG_TYPE_2 = "keyword"
const MSG_TYPE_3 = "hangup"

const (
	MessageTypeAuth = "auth"
	MessageTypeChat = "chat"
	MessageTypePing = "ping"
	MessageTypePong = "pong"
)

type Message struct {
	Type string                 `json:"type"`
	Data map[string]interface{} `json:"data"`
}

// IncomingMessage 客户端发送的消息格式
type IncomingMessage struct {
	Type string                 `json:"type"` // 消息类型: auth, chat, ping...
	Data map[string]interface{} `json:"data"` // 负载数据
}

// AuthMessage 认证消息的负载
type AuthMessage struct {
	Token string `json:"token"`
}
